import type { JSON2TypeOpt, RendererOptionsType } from "./util";

// type MenuOption = /** 基础配置 */
type baseOptions = Pick<
  JSON2TypeOpt,
  | "lang"
  | "typeName"
  | "indentation"
  | "inferDateTimes"
  | "inferUuids"
  | "inferEnums"
  | "inferMaps"
  | "allPropertiesOptional"
  | "alphabetizeProperties"
  | "combineClasses"
>;

export type StateType = {
  /** json 字符串 */
  json: string;
  /** 生成的类型 */
  genType: string;
  /** quicktype 配置 */
  quicktypeOpt: baseOptions & RendererOptionsType;
};
